package ti.me.seek2chat.activities

import android.os.Bundle
import androidx.appcompat.app.AppCompatActivity
import ti.me.seek2chat.leancloud.LeanCloudService
import ti.me.seek2chat.utilities.PreferenceManager

/**
 * BaseActivity 是一个基础活动类，继承自 AppCompatActivity。
 * 它主要负责初始化 LeanCloudService 和 PreferenceManager，并在活动的生命周期方法中更新用户的可用性状态。
 */
open class BaseActivity : AppCompatActivity() {
    private lateinit var leanCloudService: LeanCloudService
    private lateinit var preferenceManager: PreferenceManager
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        leanCloudService = LeanCloudService(applicationContext)
        preferenceManager = PreferenceManager(applicationContext)
    }

    override fun onStart() {
        super.onStart()
        leanCloudService.updateAvailability(1) // 表示用户在线
    }

    override fun onPause() {
        super.onPause()
        leanCloudService.updateAvailability(0) // 表示用户离线
    }

    override fun onResume() {
        super.onResume()
        leanCloudService.updateAvailability(1)
    }

    override fun onDestroy() {
        super.onDestroy()
        leanCloudService.updateAvailability(0)
    }
}